1. Field of the Invention.
This invention relates in general to a method and system for servicing users"" in an Asynchronous Transfer Mode (ATM) environment, and in particular, to a method and system for servicing users"" with multilevel Quality of Service (QoS) requirements in a ATM Adaptive Layer 2 (AAL2).
2. Description of Related Art.
ATM has been selected as a world standard for broadband ISDN in network communication systems. ATM systems have been implemented on a global basis and developed in a rapid growth. ATM technology is destined to play a major role in both public and private broadband networks. AAL2 is one of the four types of AAL (ATM Adaptive Layer) protocols which have been recommended by CCITT, namely AAL1, AAL2, AAL3/4 and AAL5. In general, the layer services provided by AAL1 are constant bit rate (CBR) services which require information to be transferred between source and destination at a constant bit rate. AAL1 technology is generally designed to satisfy concurrent or near concurrent transmission, such as related to voice transmission, which requires very high transmission speed. AAL2 offers a transfer of information with a variable bit rate. In addition, timing information is transferred between source and destination. Since the source is generating a variable bit rate (VBR), it is possible that cells are not completely filled and that filling level varies from cell to cell. AAL2 technology is generally designed to satisfy a transmission of packets with variable bit rates, often with low bit rates, such as voice/video type of transmission. AAL3/4 is used for transfer of data which is sensitive to loss, but not sensitive to delay. AAL3/4 protocol may be used for connection oriented as well as for connectionless data communication. AAL3/4 itself does not perform all functions required by a connectionless service, since functions like routing and network addressing are performed on the network layer. AAL5 is designed to offer a service with less overhead and better error detection below the CPCS layer. AAL3/4 and AAL5 are often designed to satisfy a secured transmission of data packets, for example, transactions in the banking industry, or aviation industry.
In a AAL2 protocol, AAL2 Negotiation Procedure (ANP) is a ITU-T recommendation for establishing peer-to-peer AAL2 channels on a single ATM connection, which is introduced in BISDN ATM Adaptation Layer 2 specificationxe2x80x94(Annex C Dynamic allocation of AAL type 2 channels) published as a draft new recommendation I.363.2 (Madrid, November 1996) and approved in September 1997 (hereinafter xe2x80x9cRecommendationxe2x80x9d).
In recent time, the need for supporting low bit rate and delay sensitive applications in a ATM environment has necessitated the ITU-T to propose a new AAL2 whereby packets less than ATM payload size can be packed efficiently and transmitted on a single ATM connection. The new AAL2 is generally targeted towards voice and telephony over ATM, where voice packets from different users can be multiplexed on a single ATM connection. In addition, the same AAL2 can be used to transport data packet (individually or with voice packets). The new AAL2 is designed to improve the efficiency of network resources, such as using less number of queues, and provide a cost-effective solution to customers.
In a traditional ATM network, a single ATM cell carries a packet from a single user. This is designed to provide a necessary QoS guarantee for each user. Further, this traditional one-ATM-cell for one-user at a time type of model is designed to control QoS parameters, such as delay, delay variation, and cell loss, at the ATM cell level. However, the traditional ATM networks and methods are not suitable for providing QoS in a AAL2 environment because a ATM cell carries packets from two or more users on a single ATM connection. A typical AAL2 environment generally provides about 256 channels (248 of which are generally available for the users and 8 of which are provided for system management). Using one level of QoS to serve multilevel users"" QoS requirements for transferring different packets would cause some users to experience significant delay and/or other degradation below an acceptable level. With a rapid development of communication systems in a AAL2 environment, providing multilevel QoS to satisfy different users has become a very important issue. Some users may require a faster, less delay service, whereas other users may require a less cost but with moderate delay service. In existing AAL2 systems, even if the users require different QoSs for their transfer of packets, the packets are transferred with a pre-configured QoS without considering different QoS required by the users at a ATM cell level. As a result, various users"" multilevel QoS requirements are not met. One solution to the problem is to adding more queues or ATM cells. However, this approach would waste network resources. Further, this approach does not help differentiate the cost to the users who demand a higher QoS from the cost to the users who demand a less QoS. Therefore, in existing systems, it is very difficult to meet QoS guarantee at a ATM cell level when a single ATM cell may contain packets from two or more users with different QoS requirements.
Also, during a network congestion, a ATM cell may be lost or dropped by the network. Since the existing ATM systems cannot differentiate a packet with a higher QoS requirement from a packet with a lower QoS requirement at the ATM cell level, the existing ATM systems cause both types of packets to be lost or dropped.
It can be seen that there is a need for a method and system to service multilevel QoS in a AAL2 network to meet individual QoS guarantee and reduce number of queues or ATM cells needed.
It can also be seen that there is a need for a method and system to service multilevel QoS in a AAL2 network such that different application services/users can specify different QoS requirements, e.g. delay constraints, delay variation constraints, cell loss constraints, or other QoS parameter constraints, which are supported by the AAL2 network in a cost effective manner.
It can further be seen that there is a need a method and system for supporting multilevel QoS in many communication environments, such as mobile, wireline trunking environments, data network environments including internet applications, or traditional telephony environments.
To overcome the limitations in the prior art described above, and to overcome other limitations that will become apparent upon reading and understanding the present specification, the present invention discloses a method and system for servicing users"" in an Asynchronous Transfer Mode (ATM) environment, and in particular, to a method and system for servicing users"" with multilevel Quality of Service (QoS) requirements in a ATM Adaptive Layer 2 (AAL2).
In general, the present invention solves the above-described problems by obtaining a QoS requirement of each user either from the user or computer based on a call request setup during a AAL2 Negotiation Procedures (ANP). The details on a ANP is described in the related patent application as mentioned above, which is incorporated herewith by reference. The obtained QoS requirements are stored or updated in a ANP memory (or memory table) along with other parameters, such as a Channel Identification (CID), a CID status, etc. After a successful negotiation in the ANP, a packet associated with the call request, such as a voice/data packet, is received by a AAL2 multilevel QoS service module. The packet""s identification is checked, and the corresponding QoS requirement is obtained from the ANP memory. Based on the QoS requirement from the ANP memory, the packet is placed into a queue that matches the QoS requirement required by the user or closely matches the QoS requirement required by the user. The queues can be configured by a provisioning procedures based on the network operators pre-defined QoS offerings or adjustable based on the demand by the users. The present invention""s per QoS queuing allows the AAL2 network operators to group users based on the QoS requirement, to meet individual QoS guarantee, and to reduce the number of queues needed. Accordingly, the present invention services packets from these queues based on the QoS. Accordingly, packets with stringent QoS requirements, such as with a requirement of immediate transmission, etc., can be serviced faster than those with flexible QoS requirements. Therefore, all the users can be compensated equally for the delays expected to be encountered to their respective destinations.
According to the present invention, delay (one of the main QoS parameters) requirements for different AAL2 users can be controlled by a Timer_CU (under Recommendation, Timer_CU is a timer composite unit) that is used in a process of packing or placing packets in a ATM cell. A packet belonging to a AAL2 user who has requested a stringent delay (i.e. no delay) is assembled in a ATM cell and immediately transmitted on the ATM connection or link. If a AAL2 user has specified a delay, e.g. 4 ms, of packing time, then a packet belonging to that user is retained in a ATM cell only for 4 ms before being transmitted to the remote peer entity. During this cell waiting time controlled by the Timer_CU, if there are no packets from the other users, then the ATM cell containing only that user""s packet is transmitted immediately after 4 ms expires. Accordingly, QoS (delay) requirement for each individual user is controlled at the ATM cell level.
In addition, according to the present invention, another one of the main QoS parameters, Cell Loss Ratio (CLR), can also be controlled on an individual AAL2 user level. During a congestion of the network where there is a ATM cell loss, the present invention is able to selectively drop some packets according to their QoS requirements. For example, to avoid a network congestion, the ATM service module may drop packets from the queue with a lower QoS requirement and still allow the packets from the queue with a higher QoS requirement to be transmitted. Further, the present invention allows monitoring the details of the cell loss parameter and identifying the packet which is dropped from the ATM cell before the AAL2 connection. Accordingly, queues with different QoS values in the present invention allow a finer granularity in controlling this CLR QoS parameter.
Further, the present invention allows the AAL2 network provider to guarantee the same quality to all the users while improving the utilization of network resources. The multilevel QoS support of the present invention can also be extended to support other low bit rate applications especially from mobile terminals, telephony, and emerging technology involving in using internet to make phone calls, video conferencing, etc.
Furthermore, the present invention also allows the network provider to optimize the network resource usage and provide service quality guarantees based on customer requests. Further, this service oriented mechanism of the present invention would also benefit the network provider by enabling them to bill the user based on requested QoS parameter values.
In one embodiment, the present invention provides a method of servicing users"" multilevel QoS (Quality of Service) requirements in transferring a plurality of packets from a local peer entity to a remote peer entity of a communication system. A plurality of queues having different QoS requirements are provided in a ATM service module at the local peer entity. When a plurality of call requests are received from the users for transferring the plurality of packets, the ATM service module at the local peer entity negotiates with the ATM service module at the remote peer entity. Each of the plurality of call requests has a QoS requirement and is recorded in a memory associated with the ATM module. After a successful transfer negotiation between the local peer entity and the remote peer entity, the corresponding packet is placed into one of the queues which has the same QoS requirement as the QoS requirement recorded or updated after the negotiation in the memory for the corresponding packet. Thereafter, the packet is transferred from the local peer entity to the remote peer entity according to its QoS requirement.
One aspect of the present invention is that the queues with the different QoS requirements are multiplexed in a ATM cell and transmitted via a ATM connection to the remote peer entity.
Another aspect of the present invention is that the packets with the same QoS are placed into one queue based on the QoS. If the QoS demands that the packet be transmitted immediately, the packet is placed into a ATM cell and transmitted to the remote peer entity immediately. Otherwise, the packet removed from the queue is placed into a ATM cell and transmitted to the remote peer entity when a Timer_CU runs out of time.
Further one aspect of the present invention is that the packets are voice packets with different QoS requirements, or data packets with different QoS requirements, or video packets with different QoS requirements. In alternative embodiments, the packets can be a combination of a voice packet, a data packet, and/or a video packet with different QoS requirements.
The present invention is also a system for servicing users"" multilevel QoS requirements in transferring a plurality of packets from a local peer entity to a remote peer entity of a communication system. The system includes a ATM service module including a plurality of queues, each queue has a different QoS requirement. A plurality of call requests from different users are sent to the ATM service module for transferring users"" packets from the local peer entity to the remote peer entity, each of the plurality of call requests having a QoS requirement. The system also includes a memory for recording/updating the QoS requirement of each of the plurality of call requests. When one of the call requests is received at the local peer entity, the corresponding QoS requirement of the one call request is recorded in the memory. After a successful transfer negotiation procedure between the local peer entity and the remote peer entity, the packet associated with the one call request is placed into one of the queues with the same QoS requirement as the QoS requirement of the packet recorded in the memory.
One aspect of the present invention is that the ATM module includes a AAL2 multiplexer for multiplexing the plurality of queues into a ATM connection to transfer the plurality of packets to the remote peer entity.
Another aspect of the present invention is that packets of the same QoS requirement are placed in the same queue, packed in a ATM cell for multiplexing, and transmitted to a remote peer entity. The packing of the packets in a ATM cell is also determined by the QoS requirement of a particular queue. If the QoS requires a less delay time, the packet(s) in the ATM cell are transmitted without waiting for the ATM cell to be completely filled with the packets from the other queues.
Further, the present invention is also an article of manufacture for a computer-based data processing system, the article of manufacture including a computer readable medium having instructions for causing a computer to perform a method comprising the steps of: providing a plurality of queues having different QoS requirements; receiving a plurality of call requests from the users for transferring the plurality of packets, each of the plurality of call requests having a QoS requirement; recording the QoS requirement of each of the call requests in a memory; receiving one of the packets from one of the users after a successful transfer negotiation between the local peer entity and the remote peer entity; placing each of the packets into one of the queues with the same QoS requirement as the QoS requirement recorded in the memory for each of the packets; and multiplexing and transferring the packets with corresponding QoS requirements from the local peer entity to the remote peer entity.
Other embodiments of a system in accordance with the principles of the invention may include alternative or optional additional aspects. One such aspect of the present invention is that the packets are voice packets with different QoS, or data packets with different QoS, or video packets with different QoS, or a combination of a voice packet, a data packet, and/or a video packet with different QoS. It will be appreciated that other equivalent alternative embodiments of the packets can be used without departure of the present invention.
These and various other advantages and features of novelty which characterize the invention are pointed out with particularity in the claims annexed hereto and form a part hereof. However, for a better understanding of the invention, its advantages, and the objects obtained by its use, reference should be made to the drawings which form a further part hereof, and to accompanying descriptive matter, in which there are illustrated and described specific examples of an apparatus in accordance with the invention.